package com.bite.book.mapper;

import com.bite.book.model.BookInfo;
import com.bite.book.model.PageResult;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

import java.util.List;


@Mapper
public interface BookInfoMapper {

    @Insert("insert into book_info (book_name, author, count, price, publish, status) " +
            "values (#{bookName}, #{author}, #{count}, #{price}, #{publish}, #{status})")
    Integer addBook(BookInfo bookInfo);


    @Select("select * from book_info where status != 0 order by id limit #{offset}, #{pageSize}")
    List<BookInfo> getListByPage(int offset, Integer pageSize);

    @Select("select count(1) from book_info where status != 0")
    Integer count();

    @Select("select * from book_info where id = #{id}")
    BookInfo queryBookBuId(Integer id);

    void updateBook(BookInfo bookInfo);

    void batchDeleteBook(List<Integer> ids);
}
